package com.example.admin.mybledemo.ota;

/**
 * OTA协议版本枚举
 * 从OtaManager中提取，提供协议版本管理
 */
public enum ProtocolVersion {
    V1("协议V1"), 
    V2("协议V2"), 
    AUTO("自动检测");
    
    private final String description;
    
    ProtocolVersion(String description) {
        this.description = description;
    }
    
    public String getDescription() {
        return description;
    }
    
    /**
     * 根据字符串获取协议版本
     */
    public static ProtocolVersion fromString(String version) {
        if (version == null) return AUTO;
        
        switch (version.toLowerCase()) {
            case "v1":
            case "1":
                return V1;
            case "v2":
            case "2":
                return V2;
            default:
                return AUTO;
        }
    }
    
    /**
     * 是否为特定版本
     */
    public boolean isSpecificVersion() {
        return this != AUTO;
    }
} 